/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package isd.facturacion.rn;

import isd.facturacion.dao.FC_CircuitoDAO;
import isd.facturacion.modelo.FC_Circuito;
import isd.facturacion.modelo.FC_CircuitoPK;
import isd.facturacion.modelo.FC_CodigoCircuito;
import isd.facturacion.modelo.FC_Comprobante;
import isd.general.excepciones.ExcepcionGeneralSistema;
import isd.inventario.modelo.ST_Comprobante;
import isd.ventas.modelo.VT_Comprobante;
import isd.tesoreria.modelo.CJ_Comprobante;
import java.util.List;
import javax.ejb.EJB;
import javax.ejb.Stateless;

/**
 *
 * @author Claudio
 */
@Stateless
public class FC_CircuitoRN {

    @EJB private FC_CircuitoDAO circuitoDAO;

    public FC_Circuito getCircuito(FC_CircuitoPK idPK){
        return circuitoDAO.getCircuito(idPK);
    }

    public FC_Circuito getCircuito(String circom,String cirapl){

        FC_CircuitoPK idPK = new FC_CircuitoPK(circom, cirapl);
        return circuitoDAO.getCircuito(idPK);
    }

    public FC_Comprobante getComprobanteFacturacion(String circom, String cirapl, String modcom, String codcom) throws ExcepcionGeneralSistema {

//        System.out.println(circuitoDAO.getComprobanteProduccion(circom, cirapl ,modcom,codcom));

        FC_Comprobante cf = circuitoDAO.getComprobanteFacturacion(circom, cirapl ,modcom,codcom);
        if(cf==null) throw new ExcepcionGeneralSistema("No se encontró comprobante de facturacion ("+codcom+")" );
        return cf;
    }

    public ST_Comprobante getComprobanteStock(String circom, String cirapl, String modcom, String codcom) throws ExcepcionGeneralSistema {

        ST_Comprobante cs = circuitoDAO.getComprobanteStock(circom, cirapl ,modcom,codcom);
        if(cs==null) throw new ExcepcionGeneralSistema("No se encontró comprobante de stock ("+codcom+")" );
        return cs;

    }

    public VT_Comprobante getComprobanteVenta(String circom, String cirapl, String modcom, String codcom) throws ExcepcionGeneralSistema {

        VT_Comprobante cv = circuitoDAO.getComprobanteVenta(circom, cirapl ,modcom,codcom);
        if(cv==null) throw new ExcepcionGeneralSistema("No se encontró comprobante de venta ("+codcom+")" );
        return cv;

    }

    public CJ_Comprobante getComprobanteTesoreria(String circom, String cirapl, String modcom, String codcom) throws ExcepcionGeneralSistema {

        CJ_Comprobante cj = circuitoDAO.getComprobanteTesoreria(circom, cirapl ,modcom,codcom);
        if(cj==null) throw new ExcepcionGeneralSistema("No se encontró comprobante de tesoreria ("+codcom+")" );
        return cj;

    }

    public FC_CodigoCircuito getCodigoCircuito(String codigo) {

        return circuitoDAO.getCodigoCircuito(codigo);
    }

    public List<FC_CodigoCircuito> getListaCodigoCircuito() {

        return circuitoDAO.getListaCodigoCircuito();
    }

   
}
